//
//  PopView.m
//  弹出pop视图
//
//  Created by 袁飞霞 on 16/5/13.
//  Copyright © 2016年 cn.sophietobeabetterone. All rights reserved.
//

#import "PopView.h"

@implementation PopView
#define arrowHeight 8

-(void)drawRect:(CGRect)rect
{
     CGFloat minX = CGRectGetMinX(rect);
    CGFloat maxX = CGRectGetMaxX(rect);
    CGFloat midX = CGRectGetMidX(rect);//中间的X centerX
    CGFloat minY = CGRectGetMinY(rect);
    CGFloat maxY = CGRectGetMaxY(rect) - arrowHeight;
    
    //  获取当前的图形上下文
    CGContextRef context  = UIGraphicsGetCurrentContext();
    //  1. 把画笔移动到箭头的右上角
    CGContextMoveToPoint(context, midX + arrowHeight, maxY);
    //  2. 绘制从箭头右上角到顶点的线
    CGContextAddLineToPoint(context, midX, maxY + arrowHeight);
    //  3. 绘制从顶点到箭头左上角线
    CGContextAddLineToPoint(context, midX - arrowHeight, maxY);
    
    //  绘制四个圆角
    //  绘制一个弧线，这个弧线与当前的点与(x1,y1)线 和 (x1,y1)到(x2,y2)线 相切
    CGContextAddArcToPoint(context, minX, maxY, minX, minY, arrowHeight);
    CGContextAddArcToPoint(context, minX, minY, maxX,minY , arrowHeight);
    CGContextAddArcToPoint(context, maxX, minY, maxX, maxY, arrowHeight);
    CGContextAddArcToPoint(context, maxX, maxY, minX, maxY, arrowHeight);
    
    //  闭合路径
    CGContextClosePath(context);
    
//     [[UIColor grayColor]setStroke];
    //  设置白色
    [[UIColor grayColor] set];
    //  实心渲染
    CGContextStrokePath(context);

}

@end
